import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.util.*;  // (Date)

/**
 * Clase que sirve para mostrar en el escenario el tiempo 
 * 
 * @author Héctor Nicolás Anguiano Huerta
 * @version 26 de Octubre de 2012.
 */
public class Time extends Actor
{
    Date ini;//Variable que sirve para alamacenar el tiempo inicial.      
    Date end;//Variable que sirve para alamacenar el tiempo actual. 
    private int tiempo;//Variable para inicializar el tiempo.
    /**
     * Constructor para la clase Time.
     */
    public Time()
    {
        tiempo = 0;
        ini = null;
        this.setImage(new GreenfootImage("Tiempo: "+tiempo,30,java.awt.Color.GREEN,java.awt.Color.RED));
    }
    
    /**
     * Se verifica si se inicia el tiempo o si se tiene que actualizar.
     */
    public void act() 
    {
        if(ini == null)
            this.comienzo();
        this.actualizaTiempo();
    }    
    
    /**
     * Se encarga de comenzar el tiempo.
     */
    public void comienzo()
    {
        ini = new Date();
    }
    
    /**
     * Actualiza cada segundo.
     */
    public void actualizaTiempo()
    {
        end = new Date();
        Zombieland mundo;
        mundo=(Zombieland)super.getWorld();
        long time = tiempo+(end.getTime() - ini.getTime())/1000;
        this.setImage(new GreenfootImage(" Tiempo: "+(time),30,java.awt.Color.GREEN,java.awt.Color.RED));
    }        
}

